package org.jeecg.modules.nikeProject.service;

import org.jeecg.common.api.vo.Result;
import org.jeecg.modules.nikeProject.entity.SportsProject;
import com.baomidou.mybatisplus.extension.service.IService;
import org.jeecg.modules.nikeProject.entity.vo.*;

import java.util.List;

/**
 * @Description: 案例评审-项目管理
 * @Author: jeecg-boot
 * @Date:   2024-12-05
 * @Version: V1.0
 */
public interface ISportsProjectService extends IService<SportsProject> {

    String getDSTData(String field, String name, String schoolName, String phone, String type);

    Result<ProjectInfoVO> getProjectDetail(String projectId, String roleType, String step, String username, String reviewId, String reviewType);

    Result<ProjectInfoVO> queryInfoByCode(String projectId, String step, String username, String roleType);

    Result<?> submit(String projectId, String username);

    SportsProject getSportsProjectById(String projectId);

    Result<?> projectAssignment(AssignmentReqVO reqVO, String username);

    Result<RespProjectAssignmentListVO> getProjectAssignList(ReqProjectAssignmentListVO reqVO);

//    Result<?> updateProjectStatus(String projectId, String reviewType);

    Result<RespFirstAuditListVO> list(ReqListVO reqVO);

//    Result<RespProjectAssignmentListVO> getSeniorAuditList(int pageNo, int pageSize, String projectName, String status);

    String getSnapShotUrl(String projectId);

    Result<?> getUnSubmitDocList(int pageNo, int pageSize);

    Result<?> sendSMSToApply(List<String> ids);

    Result<?> operation(OperationVO operationVO, String username);

    Result<RespDisputeListVO> getDisputeList(DisputeListReqVO reqVO);

    Result<AuditScoreListRespVO> getFirstAuditScoreList(AuditScoreListReqVO reqVO);

    Result<AuditScoreListRespVO> getWinList(AuditScoreListReqVO reqVO);

    int getJudgeNum(String judgeType);

    void averageScore(String judgeType, Integer year);

    Result<?> applicationList(ReqListVO reqListVO, String username);

    Result<?> sendMsgByEmail();

    Result<?> sendMsgByTemplate();

    Result<?> getCoefficient();

    boolean checkIsTop200(String userId);
}
